/******************************************************************************
 * * setting_phone.h - data structure for setting phone sub-module
 *
 * *(C) Copyright 2019 Asr International Ltd.
 * * All Rights Reserved
 * ******************************************************************************/
#ifndef SETTING_PHONE_H
#define SETTING_PHONE_H

#ifdef __cplusplus
extern "C" {
#endif

#define SETTING_MAX_WELCOME_NOTE_CHARS_NUM    NV_SETTING_MAX_WELCOME_NOTE_CHARS_NUM
#define SETTING_MAX_WELCOME_NOTE_STR_LEN      NV_SETTING_MAX_WELCOME_NOTE_STR_LEN

typedef enum
{
    SETTING_PLMN_SEARCH_AUTO = 0,                                               // search plmn automatically
    SETTING_PLMN_SEARCH_MANUAL                                                  // search plmn manually
} SETTING_PLMN_SEARCH_MODE;

typedef enum
{
    SETTING_PLMN_SEARCH_SIM1 = 0,                                               // SIM1 is searching plmn list
    SETTING_PLMN_SEARCH_SIM2,                                                   // SIM2 is searching plmn list
    SETTING_PLMN_SEARCH_NONE                                                    // no one is searching plmn list
} SETTING_PLMN_SEARCH_STAT;

typedef struct
{
    SETTING_LANGUAGE         CurrentLanguage;                                   // current language setting
    BOOL                     AutoGuardOn;                                       // true means auto guard on.
    UINT16                   AutoGuardDelay;                                    // delay in second for auto guard starting.
    BOOL                     KeyguardOn;                                        // true means keyguard on.
    SETTING_PLMN_SEARCH_MODE PlmnSearchMode[2];                                 // plmn search mode
    SETTING_PLMN_SEARCH_STAT PlmnSearchStat;                                    // plmn search status
    BOOL                     StartupToneOn;                                     // true means start-up tone on.
    BOOL                     FlightModeOn;                                      // true means flight mode on.
    BOOL                     WelcomeNoteOn;                                     // true means welcome note will be displayed

    INT8                     WelcomeNote[SETTING_MAX_WELCOME_NOTE_STR_LEN];     // max length of welcome note
} Setting_Phone_Setting_Mng_t;

extern Setting_Phone_Setting_Mng_t g_SettingPhoneSettingMng;

#ifdef __cplusplus
} /* extern "C" */
#endif

#endif /*SETTING_PHONE_H*/
